Skip to content

[Enhancement] feat(player): subtitle font size, color & system caption support (#547) - #551

Open
prince-pokharna wants to merge 1 commit into
ProdigyV21:mainfrom
prince-pokharna:feature/subtitle-customization
Open

[Enhancement] feat(player): subtitle font size, color & system caption support (#547)#551
prince-pokharna wants to merge 1 commit into
ProdigyV21:mainfrom
prince-pokharna:feature/subtitle-customization

Conversation

@prince-pokharna

Copy link
Copy Markdown

Summary

Adds user-facing subtitle customisation to ARVIO's player, resolving the
accessibility gap identified in #547.

Changes

  • SubtitlePreferences.kt – data model (fontSize, textColor, backgroundColor, position, fontStyle, useSystemCaptions)
  • SubtitleStyleManager.kt – reads Android TV CaptioningManager system caption prefs; falls back to app defaults; applies CaptionStyleCompat + setFixedTextSize to SubtitleView
  • SubtitlePrefsRepository.kt – persists preferences via SharedPreferences
  • SubtitleSettingsFragment.kt + fragment_subtitle_settings.xml – TV D-pad-navigable settings sheet with preset sizes (Small 14sp / Medium 18sp / Large 22sp / Extra Large 28sp), color options, and a system caption toggle

Testing

  • Compiled with ./gradlew :app:compilePlayDebugKotlin — zero errors
  • Manually tested on Android TV emulator (API 34)
  • System captions enabled → ARVIO subtitle view reflects system style
  • Preference persists across app restart

Accessibility compliance

Aligns with Android TV caption accessibility guidelines by honouring CaptioningManager.getUserStyle().

Closes #547

…V21#547)

- Add SubtitlePreferences data class with fontSize, textColor, backgroundColor
- Add SubtitleStyleManager to read Android TV CaptioningManager system prefs
- Add SubtitlePrefsRepository for SharedPreferences persistence
- Add SubtitleSettingsFragment with Small/Medium/Large/Extra Large presets
- Wire SubtitleStyleManager into player screen
- Respects accessibility caption settings per Android TV guidelines

Closes ProdigyV21#547
@github-actions github-actions Bot added the area: android Changes to the Android app or Gradle build label Aug 10, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area: android Changes to the Android app or Gradle build

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Enhancement]: Add subtitle font size and color customization to player settings — accessibility improvement for TV viewers

1 participant